package com.leo.train.business.service;

import com.leo.train.business.dto.SkTokenDto;
import com.leo.train.business.entity.SkToken;
import com.leo.train.common.resp.PageResult;

import java.util.Date;

public interface SkTokenService {
    /**
     * 查询秒杀令牌列表
     * @param skTokenDto
     * @return
     */
    PageResult<SkToken> list(SkTokenDto skTokenDto);

    /**
     * 修改秒杀令牌
     * @param skToken
     */
    void update(SkToken skToken);

    /**
     * 查询秒杀令牌详情
     * @param id
     * @return
     */
    SkToken detail(Long id);

    /**
     * 生成每次秒杀令牌
     */
    void genDaily(Date date, String trainCode);

    /**
     * 校验秒杀令牌是否充足
     * @param date
     * @param trainCode
     * @return
     */
    boolean validSkToken(Date date, String trainCode,Long memberId);
}
